5.13. Знаки препинания
Знаки препинания
Два важных вопроса, которые мучают начинающих программистов:
- Когда использовать кавычки двойные (
"), одинарные ('), а когда апострофы (’)? - Когда использовать точки (
.), запятые (,) и точку с запятой (;)?
Двойные (") — строки (&str или String):
let name = "Alice";
Одинарные (') — для литералов типа char:
let c = 'A';
Апострофы (’) — не поддерживаются.
Точка (.) используется для доступа к методам и полям структур:
struct Point { x: i32, y: i32 }
let p = Point { x: 1, y: 2 };
println!("x: {}", p.x);
Запятая (,) для разделения полей, аргументов, элементов массива:
let arr = [1, 2, 3];
fn greet(name: &str, age: u8) {}
Точка с запятой (;) обязательна после большинства выражений:
let x = 5;
println!("Hello");
В Rust нижние подчеркивания имеют больше применений.
_name - соглашение, что переменная не используется, предотвращая предупреждение компилятора:
let _logger = "unused";
Приватность в Rust обозначается через pub/pub(crate), не через _.
_ может использоваться для полного игнорирования:
let (x, _, z) = (1, 2, 3);
в числах:
let million = 1_000_000;
и как плейсхолдер в матчинге совпадений:
match value {
1 => println!("one"),
_ => println!("something else"), // default
}
В Rust у символа «|» есть две роли:
- Побитовое ИЛИ:
let x = 5 | 3; // 7
- Замыкания (closures) - параметры прячут в
|…|:
vec.iter().map(|x| x * 2)
Здесь |x| является началом и концом списка параметров замыкания.
|| же обычное логическое ИЛИ:
if a || b {
...
}